In order to allow a mobile telephone such as a cellular telephone to obtain the maximum amount of mobility, the concept of “roaming” had been conceived, since most cellular telephone service providers had only a limited infrastructure and, thus, could only provide limited “direct” coverage for their subscribers. In roaming, a home system identifier code is stored in the mobile telephone's memory which allows it to compare the home system identifier code to the system identifier code which is transmitted on the serving control channel. If they do not match, this means the subscriber is operating in a visited system and the mobile telephone will provide a ROAM indicator. The ROAM indicator is typically used by a subscriber to determine if billing rates have changed. Visited systems often charge a premium for service usage. In the early days of roaming, the roaming charges were controlled by the visiting system. Typically, this visiting system would recognize that the system was not part of the associated Home Location Register (HLR) and it would then look in the Visiting Location Register (VLR) to determine if the visitor had previously been registered. If not, then the visited carrier would contact the HLR of the mobile telephone's home system (determined from information provided by the mobile telephone) to register that phone therewith for the purposes of receiving incoming calls. However, third party roaming platforms have been developed that more efficiently address roaming needs of mobile users. These roaming platforms are actually responsible for building the call and they are accessed by the mobile telephone inputting information to the visited carrier that indicates a preferred roaming platform. Once this is indicated, the visited carrier hands off the call to the designated roaming platform and then the designated roaming platform is responsible for determining the roaming charges, billing, accepting the responsibility for the services, etc.
In recent years, pre-paid service plans have been offered to many subscribers. In these pre-paid service plans, unlimited local calls is typically provided for outgoing calls from an in-home carrier and even unlimited long distance calls. Roaming is sometimes also facilitated but this is typically offered through a list of preferred roaming platforms in a Preferred Roaming List (PRL) stored in the phone. Thus, when a user is outside of the home network, a call must be placed through a roaming carrier. In these pre-paid systems, however, the only way to facilitate charging a customer for non-standard (out of plan) charges is to have a pre-paid account that has a balance that can be replenished by the subscriber. The reason for this is that these pre-paid services typically do not send a bill out to the end customer; rather, all of the services are paid for ahead of time. As such, there must be a way to determine if a subscriber is active and if they have sufficient funds in a pre-paid account to cover roaming charges. Thus, when the roaming platform is contacted, they will have to address the sufficiency funds issue. However, when a call is constructed, i.e., when it is determined that a particular subscriber is an active subscriber, billing is immediately initiated to the home network carrier. The problem with this is that, if it is determined that the subscriber is active, but they do not have sufficient funds, they will be terminated and the home carrier will be charged with the amount of time required to make such a determination. This is also the case with respect to a mobile subscriber calling an unanswered phone. It must first be determined that the active subscriber in a roaming mode is authenticated and, if authenticated, then the call is allowed to go through, at which time the billing starts. However, if the call goes unanswered, home carriers will typically absorb the cost for those few tenths of a second or seconds for the called phone to ring.
One disadvantage to current roaming systems, especially those with respect to pre-paid accounts, is that the user has no knowledge of the account balance other than accessing their account directly and looking at the balance. However, when the user makes a call, there is typically no knowledge of the roaming charges or the account balance.